package com.shujia.scala

object Demo19ScalaTuple {
  /**
   * Tuple 元组 同List很相似
   * 元组是不可以改变的 最大长度为22
   * 没有可变元组与不可变元组一说
   * 虽然不可以用索引取值 但它是有序的
   */
  def main(args: Array[String]): Unit = {
    val tuple3: (Int, Int, Int) = Tuple3(1, 2, 3) // 三元组
    println(tuple3)
    println(tuple3._1) // 第一个元素
    println(tuple3._2) // 第二个元素
    println(tuple3._3) // 第三个元素

    val tuple2: (Int, Int) = (1, 2) // 动态推断元组的类型
    println(tuple2)

    // 只有一个元素的元组
    // Python的方式在创建时加一个 逗号 这种方式在Scala中通不过编译 那就使用Tuple1(1)创建
    val i: Tuple1[Int] = Tuple1(1)
    println(i._1)


  }

}
